Skip to content

chore: port local-testbed to procman#3184

Draft
wbbradley wants to merge 5 commits intomainfrom
wbbradley/procman-testbed
Draft

chore: port local-testbed to procman#3184
wbbradley wants to merge 5 commits intomainfrom
wbbradley/procman-testbed

Conversation

@wbbradley
Copy link
Copy Markdown
Contributor

@wbbradley wbbradley commented Mar 24, 2026

Description

Add procman.yaml to replace scripts/local-testbed.sh (tmux-based) with structured process
management via procman.

Processes: suibuilddeploynodes (fan-out via for_each) + aggregator

CLI args (passed after --):

  • --existing / -e — skip build and deploy, use existing configs in working_dir/
  • --gc / -g — patch garbage collection config into node yamls during deploy
  • --cleanup-storage — pass --cleanup-storage to storage nodes (default: true)
  • --contract-dir — contract directory (default: ./contracts, use ./testnet-contracts for testnet)

Examples:

procman procman.yaml                                    # default: build, deploy, run
procman procman.yaml -- --existing                      # skip build+deploy
procman procman.yaml -- --gc                            # enable GC config
procman procman.yaml -- --contract-dir=./testnet-contracts

Also removes procman-logs/ from .gitignore since logs now go to working_dir/logs/
(already covered by the working_dir/ entry).

Test plan

  • Validated YAML syntax
  • Manual testing with procman procman.yaml against a local Sui network

Release notes

Check each box that your changes affect. If none of the boxes relate to your changes, release notes aren't required.
For each box you select, include information after the relevant heading that describes the impact of your changes that
a user might notice and any actions they must take to implement updates. (Add release notes after the colon for each item)

  • Storage node:
  • Aggregator:
  • Publisher:
  • CLI:

@wbbradley wbbradley force-pushed the wbbradley/procman-testbed branch from 6f4fafc to 6a6ddce Compare April 7, 2026 20:05
Fix adaptive_downloader_config indentation in both procman.yaml and
local-testbed.sh so max_workers/initial_workers are children of
adaptive_downloader_config rather than siblings. Change network default
from gloopity/devnet to localnet. Add aggregator, rust-log args and
input validation to procman.yaml. Couple cleanup-storage to fresh deploy.
Replace YAML format with the new procman DSL. Key changes:
- config/arg blocks replace YAML config section
- Explicit env bindings replace arg-level env fields
- DSL conditionals (if !args.existing) replace shell test conditions
- for/glob replaces for_each YAML construct
- wait blocks with after/http/!connect replace depends arrays
@wbbradley wbbradley force-pushed the wbbradley/procman-testbed branch from 6a6ddce to 89244ad Compare April 8, 2026 04:18
@github-actions
Copy link
Copy Markdown
Contributor

This PR is stale because it has been open 14 days with no activity. It will be closed in 7 days unless you remove the stale label, add the do-not-close label, or comment on it.

@github-actions github-actions Bot added the stale label Apr 27, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant